package dao;

import entity.User;
import org.springframework.stereotype.Component;

import java.util.List;

@Component
public interface UserDao {
    /**
     * 用户注册
     * @param user
     * @return result
     */
    int logonUser(User user);
    /**
     * 用户登录
     * @param user
     * @return result
     */
    User loginUser(User user);
    /**
     * 通过Email获取用户信息
     * @param user
     * @return result
     */
    User findUserByEmail(User user);
    /**
     * 获取所有用户信息
     * @return result
     */
    List<User> findAll();
    /**
     * 修改用户信息
     * @param user
     * @return result
     */
    int modifyUser(User user);
    /**
     * 删除用户信息
     * @param user
     * @return result
     */
    int deleteUser(User user);
    /**
     * 修改用户邮件信息
     * @param user
     * @return result
     */
    int modifyEmail(User user);
    /**
     * 修改用户Type信息
     * @param user
     * @return result
     */
    int modifyType(User user);
    /**
     * 通过ID查找用户信息
     * @param id
     * @return User
     */
    User findUserById(int id);
}
